package com.morgan.test;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;

public class CTMapSort2 {

    public static void main(String[] args) {
        

    }

    @SuppressWarnings("unchecked")
    public static List sort(List list) {
        List<Object> rlist = new ArrayList<Object>();
        Object objs[] = list.toArray();
        Arrays.sort(objs);

        for (int i = 0; i < objs.length; i++) {
            rlist.add(objs[i]);
        }
        return rlist;
    }

    @SuppressWarnings("unchecked")
    public static List sort(Map map) {
        List<Object> rlist = new ArrayList<Object>();
        Object objs[] = map.values().toArray();
        Arrays.sort(objs);

        for (int i = 0; i < objs.length; i++) {
            rlist.add(objs[i]);
        }
        return rlist;
    }

    
    /**
     * 
     * 
--------------------------------------------------------------------------------
对于实现List接口的容器，可以使用Collections.sort()来排序 

比如： 
List <Integer> nums = new ArrayList <Integer>(); 
nums.add(5); 
nums.add(3); 
nums.add(2); 

Collections.sort(nums); 

nums里的元素就按从小到大的顺序排好了。 

当然，如果list里面存的不是数值型的对象怎么办，那就要你要比较的类实现Comparable接口，实现CompareTo方法。 
通过CompareTo方法确定两者大小 

--------------------------------------------------------------------------------
楼上的说的对 
对List中的内容进行排序有java.util.Collections.sort(List list); 
默认的是按升序排列 
对Map排序是按照关键字排序吗？ 
如果是这样的话，把Map中的关键字映射成Set，Map.ketSet(); 
在对关键字排序

     * 
     * 
     * 
     */
}
